Component org.nuxeo.directory.mongodb.MongoDBDirectoryFactory
In bundle org.nuxeo.directory.mongodb
Documentation
MongoDB-based implementation for Directory
Requirements
- org.nuxeo.runtime.mongodb.MongoDBComponent
- org.nuxeo.ecm.directory.DirectoryServiceImpl
- org.nuxeo.ecm.directory.sql.SQLDirectoryFactory
Resolution Order
830
The resolution order represents the order in which this component has been resolved by the Nuxeo Runtime
framework.
You can influence this order by adding "require" tags in your component declaration, to make sure it is resolved after another component.
Start Order
798
The start order represents the order in which this component has been started by the Nuxeo Runtime framework.
This number is interesting to tweak if your Java component interacts with other components, and needs to be started before or after another one.
It can be changed by implementing the method "Component#getApplicationStartedOrder()" on your Java component: components are sorted according to this reference value, in increasing order.
The default value is 1000, and the repository initialization uses number 100. Negative values can also be used.
Implementation
Class:
org.nuxeo.directory.mongodb.MongoDBDirectoryFactory
Extension Points
XML Source
<?xml version='1.0' encoding='UTF-8'?>
<component name="org.nuxeo.directory.mongodb.MongoDBDirectoryFactory">
<implementation class="org.nuxeo.directory.mongodb.MongoDBDirectoryFactory"/>
<require>org.nuxeo.runtime.mongodb.MongoDBComponent</require>
<require>org.nuxeo.ecm.directory.DirectoryServiceImpl</require>
<require>org.nuxeo.ecm.directory.sql.SQLDirectoryFactory</require>
<documentation>
MongoDB-based implementation for Directory
</documentation>
<extension-point name="directories">
<documentation>
This extension point can be used to register new MongoDB-based directories. The extension can contain any number
of directories declarations of the form:
<code>
<directory name="userDirectory">
<schema>vocabulary</schema>
<types>
<type>system</type>
</types>
<idField>username</idField>
<passwordField>password</passwordField>
<passwordHashAlgorithm>SSHA</passwordHashAlgorithm>
<autoincrementIdField>false</autoincrementIdField>
<createTablePolicy>on_missing_columns</createTablePolicy>
<dataFile>setup.csv</dataFile>
<dataFileCharacterSeparator>,</dataFileCharacterSeparator>
<references>
<reference field="groups" directory="groupDirectory" collection="user2group" sourceField="userId" targetField="groupId" dataFile="user2group.csv"/>
</references>
<permissions>
<permission name="Read">
<group>mygroup</group>
<group>mygroup2</group>
<user>Administrator</user>
</permission>
<permission name="Write">
<group>mygroup3</group>
</permission>
</permissions>
</directory>
</code>
If you want to customize the MongoDB connection used in the directory, you can contribute a new connection
configuration to MongoDBComponent with id 'directory/[directory@name]'. In the example above the id will be
'directory/userDirectory'
</documentation>
<object class="org.nuxeo.directory.mongodb.MongoDBDirectoryDescriptor"/>
</extension-point>
</component>